package com.jonas.jgraph.graph;

import android.support.annotation.IntDef;

import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;

/**
 * @author xujiang
 * @version 2017-07-25 16:43
 */
public class StyleAnnotation {

    @Retention(RetentionPolicy.SOURCE)
    @IntDef({ StateConstant.LINE_BROKEN, StateConstant.LINE_CURVE })
    public @interface LineStyle {

    }

    @Retention(RetentionPolicy.SOURCE)
    @IntDef({ StateConstant.LINESHOW_DRAWING, StateConstant.LINESHOW_SECTION, StateConstant.LINESHOW_FROMLINE,
            StateConstant.LINESHOW_FROMCORNER, StateConstant.LINESHOW_ASWAVE })
    public @interface LineShowStyle {

    }

    @Retention(RetentionPolicy.SOURCE)
    @IntDef({ StateConstant.BARSHOW_ASWAVE, StateConstant.BARSHOW_FROMLINE, StateConstant.BARSHOW_EXPAND,
            StateConstant.BARSHOW_SECTION })
    public @interface BarShowStyle {

    }

    @Retention(RetentionPolicy.SOURCE)
    @IntDef({ StateConstant.SHOWFROMTOP, StateConstant.SHOWFROMBUTTOM, StateConstant.SHOWFROMMIDDLE })
    public @interface ShowFromMode {

    }

    @Retention(RetentionPolicy.SOURCE)
    @IntDef({ StateConstant.LINE_EVERYPOINT, StateConstant.LINE_JUMP0, StateConstant.LINE_DASH_0 })
    public @interface LineMode {

    }

    /**        BaseGraph          */

    @Retention(RetentionPolicy.SOURCE)
    @IntDef({StateConstant.aniChange, StateConstant.aniShow, StateConstant.aniFinish})
    protected @interface State {

    }

    //public final static int BAR = 0;  //柱形图
    //public final static int LINE = 1;

    @Retention(RetentionPolicy.SOURCE)
    @IntDef({ StateConstant.BAR, StateConstant.LINE})
    public @interface GraphStyle {

    }

    @Retention(RetentionPolicy.SOURCE)
    @IntDef({StateConstant.SELECETD_NULL, StateConstant.SELECTED_ACTIVATED, StateConstant.SELECETD_MSG_SHOW_TOP})
    public @interface SelectedMode {

    }
}
